﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LeetCodeProject
{
    internal class Solution88
    {
        public static void Merge(int[] nums1, int m, int[] nums2, int n)
        {/*一般代码题里的核心需要自己手写，
             * 而这个题目的核心就在于排序，
             * 所以建议是常见的排序算法能够熟悉并手写，
             * 例如冒泡、归并、快排
             */          
                int i = m + n - 1;
                while (i>0&&m>0&&n>0)
                {
                    if (nums1[m - 1] < nums2[n - 1])
                    {
                        nums1[i] = nums2[n-1];
                        n--;
                    }
                    else
                    {
                        nums1[i] = nums1[m-1];
                        m--;
                    }
                    i--;

                }
            if (n == 0) return;
            if (m == 0)
            {
                for (i = 0; i < n; i++)
                {
                    nums1[i] = nums2[i];
                }
            }
        }
            
            
        }
    }

